home *** CD-ROM | disk | FTP | other *** search
/ Qu.......ke Neue Level / KroGer Software GmbH - Qu_ke.iso / UTILITY / PRG8.ZIP / F_BITMAP.H < prev    next >
C/C++ Source or Header  |  1996-03-02  |  2KB  |  58 lines

  1. /*
  2.  * Copyright (C) 1996 by Raphael Quinet.  All rights reserved.
  3.  *
  4.  * Permission to use, copy, modify, and distribute this software and
  5.  * its documentation for any purpose and without fee is hereby
  6.  * granted, provided that the above copyright notice appear in all
  7.  * copies and that both that copyright notice and this permission
  8.  * notice appear in supporting documentation.  If more than a few
  9.  * lines of this code are used in a program which displays a copyright
  10.  * notice or credit notice, the following acknowledgment must also be
  11.  * displayed on the same screen: "This product includes software
  12.  * developed by Raphael Quinet for use in the Quake Editing Utilities
  13.  * project."  THIS SOFTWARE IS PROVIDED "AS IS" WITHOUT EXPRESS OR
  14.  * IMPLIED WARRANTY.
  15.  *
  16.  * More information about the QEU project can be found on the WWW:
  17.  * "http://www.montefiore.ulg.ac.be/~quinet/games/editing.html" or by
  18.  * mail: Raphael Quinet, 9 rue des Martyrs, B-4550 Nandrin, Belgium.
  19.  */
  20.  
  21. /*
  22.  * F_BITMAP.H - Filters for bitmap file formats.
  23.  */
  24.  
  25. #ifndef _F_BITMAP_H_
  26. #define _F_BITMAP_H_
  27.  
  28. struct RGB
  29. {
  30.   UInt8 R;
  31.   UInt8 G;
  32.   UInt8 B;
  33. };
  34.  
  35. typedef struct
  36. {
  37.   UInt16      width;            /* width of the bitmap (num. columns) */
  38.   UInt16      height;           /* height of the bitmap (num. rows) */
  39.   UInt8 huge *data;             /* pointer to bitmap data */
  40. } BitMap;
  41.  
  42. struct RGB *ReadPalette256(FILE *file, UInt32 offset);
  43. UInt32  SavePalette256(FILE *file, struct RGB *palette256);
  44.  
  45. BitMap *NewBitMap();
  46. void    FreeBitMap(BitMap *bmptr);
  47. BitMap *ReadBitMap(FILE *file, UInt32 offset);
  48. BitMap *ReadRawBitMap(FILE *file, UInt32 offset, UInt16 width, UInt16 height);
  49. UInt32  SaveBitMap(FILE *file, BitMap *bmptr);
  50. UInt32  SaveRawBitMap(FILE *file, BitMap *bmptr);
  51. void    DumpBitMap(FILE *outf, BitMap *bmptr);
  52.  
  53. UInt32  SavePPM(FILE *file, BitMap *bmptr, struct RGB *palette256);
  54. UInt32  SaveBMP(FILE *file, BitMap *bmptr, struct RGB *palette256);
  55.  
  56. #endif /* _F_BITMAP_H_ */
  57. /* end of file */
  58.